package com.sign2024.sign2024project.goodsmaterials.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;

/**
 * @author yujie
 * @data 2024/8/26 14:27
 */
@ApiModel("物资抽取方案vo类")
@Data
@HeadRowHeight(value = 30) // 头部行高
@ContentRowHeight(value = 30) // 内容行高
@ColumnWidth(value = 20) // 列宽, 可以作用在类或字段上
public class WzProgectVo {

    @ColumnWidth(value = 10)
    @ExcelProperty(value = "序号")
    private Integer serialNumber;

    // section_name
    @ColumnWidth(value = 50)
//    @ExcelProperty(value = "签报名称")
    @ExcelProperty(value = "标段名称")
    private String sectionName;

    // sign_code
    @ExcelIgnore
    @ColumnWidth(value = 20)
    @ExcelProperty(value = "分标编号")
    private String signCode;

    // sign_name
    @ColumnWidth(value = 50)
    @ExcelProperty(value = "ECP名称")
    private String signName;

    // plan_num
    @ColumnWidth(value = 15)
    @ExcelProperty(value = "本次计划条目数")
    private Integer planNum;

    // purchase_num
    @ColumnWidth(value = 15)
    @ExcelProperty(value = "本次采购数量")
    private Integer purchaseNum;

    // purchase_money
    @ColumnWidth(value = 25)
    @ExcelProperty(value = "本次采购金额（万元）")
    private BigDecimal purchaseMoney;

    // name_item_num
    @ColumnWidth(value = 15)
    @ExcelProperty(value = "本次分包数量")
    private Integer nameItemNum;

    // exam_way
    @ColumnWidth(value = 15)
    @ExcelProperty(value = "资格审查方式")
    private String examWay;

    // com_depa
    @ColumnWidth(value = 25)
    @ExcelProperty(value = "部门")
    private String comDepa;

    // family_number
    @ColumnWidth(value = 10)
    @ExcelProperty(value = "报名家数")
    private Integer familyNumber;

    // family_next
    @ColumnWidth(value = 10)
    @ExcelProperty(value = "报名家次")
    private Integer familyNext;

    // 这里需要 增加 三个 大类描述	中类描述	小类描述 字符串
    /**
     * 大类描述
     */
    @ColumnWidth(value = 35)
    @ApiModelProperty("大类描述")
    @ExcelProperty(value = "大类描述")
    private String bigDescribe;

    /**
     * 中类描述
     */
    @ColumnWidth(value = 35)
    @ApiModelProperty("中类描述")
    @ExcelProperty(value = "中类描述")
    private String middleDescribe;
    /**
     * 小类描述
     */
    @ColumnWidth(value = 35)
    @ApiModelProperty("小类描述")
    @ExcelProperty(value = "小类描述")
    private String smallDescribe;


    // 未处理
    // 技术抽取专业  sign_major
    @ColumnWidth(value = 40)
    @ExcelProperty(value = "技术抽取专业")
    private String signMajor;

    // skill_major_num
    @ColumnWidth(value = 15)
    @ExcelProperty(value = "技术专业抽取人数")
    private Integer skillMajorNum;

    // major_level
    @ExcelProperty(value = "专家等级")
    private String majorLevel;

    // 这里 增加 两个 技术 本地 异地
    /**
     * 本地人数（技术）
     */
    @ColumnWidth(value = 15)
    @ApiModelProperty("本地（技术）")
    @ExcelProperty(value = "本地（技术）")
    private Integer skillLocalNum;

    /**
     * 异地人数（技术）
     */
    @ColumnWidth(value = 15)
    @ApiModelProperty("异地（技术）")
    @ExcelProperty(value = "异地（技术）")
    private Integer skillOtherNum;


    // skill_class
    @ExcelProperty(value = "专家组别（技术）")
    private String skillClass;

    // 总人数 暂时取消
    //   skill_total_num
    @ExcelIgnore
    @ExcelProperty(value = "专家人数（技术）")
    private Integer skillTotalNum;

    // boss_class
    @ExcelProperty(value = "专家组别（商务）")
    private String bossClass;

    // boss_total_num
    @ExcelIgnore
    @ExcelProperty(value = "抽取专家人数（商务专家）")
    private Integer bossTotalNum;

    // boss_sign_major
//    @ExcelProperty(value = "商务抽取专业")
    @ExcelProperty(value = "商务专业")
    private String bossSignMajor;

    // 这里 增加三个 商务 级别	本地	异地

    //  boss_major_num
//    @ExcelIgnore
    @ExcelProperty(value = "抽取专家人数（商务专家）")
    private String bossMajorNum;

    /**
     * 级别（商务）
     */
    @ApiModelProperty("级别")
    @ExcelProperty(value = "级别")
    private String bossLevel;

    /**
     * 本地人数（商务）
     */
    @ApiModelProperty("本地")
    @ExcelProperty(value = "本地")
    private Integer bossLoacalNum;

    /**
     * 异地人数（商务）
     */
    @ApiModelProperty("异地")
    @ExcelProperty(value = "异地")
    private Integer bossOtherNum;

//    // 默认构造函数
//    public WzProgectVo() {
//        this.bossSignMajor = "商务综合";
//    }
}
